﻿using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel;
using OfficeOpenXml.Table;
using System;

namespace NP.BPMReportPlatform.StandardApprovalFlow.Dto
{
    [ExcelExporter(Name = "通用审批报表", TableStyle = TableStyles.Light10, AutoFitAllColumn = true)]
    public class GetStandardApprovalOutput
    {
        /// <summary>
        /// 标题
        /// </summary>
        [ExporterHeader(DisplayName = "标题")]
        public string Title { get; set; }

        /// <summary>
        /// 正文
        /// </summary>
        [ExporterHeader(DisplayName = "正文")]
        public string Content { get; set; }

        /// <summary>
        /// 流程实例编号
        /// </summary>
        [ExporterHeader(DisplayName = "单据号")]
        public string InstanceNumber { get; set; }

        /// <summary>
        /// 申请日期
        /// </summary>
        [ExporterHeader(DisplayName = "申请日期")]
        public DateTime AddTime { get; set; }

        /// <summary>
        /// 申请人
        /// </summary>
        [ExporterHeader(DisplayName = "申请人")]
        public string AddUserName { get; set; }

        /// <summary>
        /// 流程类型
        /// </summary>
        [ExporterHeader(DisplayName = "流程类型")]
        public string FlowType { get; set; }

        /// <summary>
        /// 单据详情链接
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        public string Url { get; set; }


        /// <summary>
        /// 单据状态
        /// </summary>        
        [ExporterHeader(DisplayName = "单据状态")]
        public string OrderStatus { get; set; }


        /// <summary>
        /// 运单号
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        public string TransportNumber { get; set; }

        /// <summary>
        /// 区域
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        [ExporterHeader(DisplayName = "区域")]
        public string Area { get; set; }

        /// <summary>
        /// 申请原因
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        [ExporterHeader(DisplayName = "申请原因")]
        public string ApplicationReason { get; set; }

        /// <summary>
        /// 额外增加运费
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        [ExporterHeader(DisplayName = "额外增加运费")]
        public decimal? AdditionalFreight { get; set; }

        /// <summary>
        /// 90单编号
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        [ExporterHeader(DisplayName = "90单")]
        public string NinetyNo { get; set; }
    }
}